using Rdl;

namespace GTame.ReportParser
{

    public class DataPointType
    {

        private ActionType _Action;
        private string _DataElementName;
        private DataPointTypeDataElementOutput _DataElementOutput;
        private DataLabelType _DataLabel;
        private DataValuesType _DataValues;
        private MarkerType _Marker;
        private StyleType _Style;

        public ActionType Action
        {
            get
            {
                if (_Action == null)
                    _Action = new ActionType();
                return _Action;
            }
            set
            {
                _Action = value;
            }
        }

        public string DataElementName
        {
            get
            {
                return _DataElementName;
            }
            set
            {
                _DataElementName = value;
            }
        }

        public DataPointTypeDataElementOutput DataElementOutput
        {
            get
            {
                return _DataElementOutput;
            }
            set
            {
                _DataElementOutput = value;
            }
        }

        public DataLabelType DataLabel
        {
            get
            {
                if (_DataLabel == null)
                    _DataLabel = new DataLabelType();
                return _DataLabel;
            }
            set
            {
                _DataLabel = value;
            }
        }

        public DataValuesType DataValues
        {
            get
            {
                if (_DataValues == null)
                    _DataValues = new DataValuesType();
                return _DataValues;
            }
            set
            {
                _DataValues = value;
            }
        }

        public MarkerType Marker
        {
            get
            {
                if (_Marker == null)
                    _Marker = new MarkerType();
                return _Marker;
            }
            set
            {
                _Marker = value;
            }
        }

        public StyleType Style
        {
            get
            {
                if (_Style == null)
                    _Style = new StyleType();
                return _Style;
            }
            set
            {
                _Style = value;
            }
        }

        public DataPointType()
        {
        }

        public DataPointType Write()
        {
            // trial
            return null;
        }

    } // class DataPointType

}

